The present invention generally concerns an input and control device, and more specifically, a control handle gimbal support mechanism for use in a joystick with haptic feedback, which is employed to produce control signals for controlling machinery, computer games, and the like.
Joysticks are typically used to provide input control signals for controlling machinery and computer application programs, such as computer games. A typical joystick includes a control handle that is pivotally rotatable relative to a base in response to input forces applied by a user who is grasping the control handle. Movement of the control handle varies an output signal usually corresponding to the angular displacement of the control handle about orthogonal xe2x80x9cXxe2x80x9d and xe2x80x9cYxe2x80x9d axes. It should be noted that movement of the joystick control handle is sometimes referred to in terms of its motion in the direction of planar X and Y axes, rather than a rotation about these axes. The output signal from a joystick is typically input to a receiving device, such as a computer, which processes the signal for controlling hardware or a computer software program. For example, in a computer executing an aircraft simulator software program, a forward or reverse movement of the joystick control handle about the X axis causes an output signal to be generated that is used to simulate control of the elevators of the aircraft and which thus affects the pitch of the aircraft in the simulation, while lateral movement of the joystick control handle about the Y axis produces a corresponding output signal that is used to control the ailerons of the simulated aircraft, and thus affects roll or rotation of the simulated aircraft about its longitudinal axis.
Joysticks are generally designed to function either as on/off devices or as proportional devices. Lower cost joysticks operating as on/off devices only change the state of a positional switch to provide an indication of whether a minimum displacement of the control handle about one of the axes of the joystick has occurred, whereas proportional devices provide output signals having a magnitude varying proportionally with the extent of the displacement of the joystick control handle away from a known point, generally its xe2x80x9ccenterxe2x80x9d point. Higher performance software applications, such as flight simulators, require the use of joysticks that provide proportional output signals.
In addition to providing input signals to a computer or other device relative to displacement of the control handle about the X and Y axes, some joysticks provide an input signal corresponding to a third axis, which is commonly referred to as the xe2x80x9cZxe2x80x9d axis. The Z axis generally extends longitudinally through the joystick control handle, and the Z-axis output signal typically is indicative of a rotational angular displacement of the joystick control handle about its longitudinally central axis.
In addition to generating control signals in response to user input, some joysticks are designed to provide force or tactile (xe2x80x9chapticxe2x80x9d) feedback to the user. Such devices are often used with computer games, and the haptic feedback feature adds to the user experience. For example, by providing various types of feedback forces that are applied to the control handle, a haptic joystick can convey to the user the physical sensation of an object controlled by the user in a game or simulation colliding with a wall, moving through mud, driving over a bumpy road, etc. This haptic feedback makes the game or simulation more realistic and entertaining.
In general, most haptic joysticks employ various gimbal mechanisms that enable the joystick control handle to be simultaneously pivoted about two coplanar axes (i.e., the X and Y axes discussed above). One type of gimbal mechanism used in joysticks is commonly referred to as a xe2x80x9cquarter gimbalxe2x80x9d mechanism. A prior art quarter gimbal 10 of this type is shown in FIG. 1. A quarter gimbal typically includes a control handle shaft 12, to which a control handle (not shown) is fixedly or rotatably coupled. The control handle is pivotally coupled to an X-axis gimbal arm 14 by a pivot bearing 15 and is pivotally coupled to a Y-axis gimbal arm 16 by a pivot bearing 17. The pivot bearings are oriented at an angle of 90 degrees, relative to each other. A cantilevered end 18 of X-axis gimbal arm 14 is pivotally mounted to a base member, e.g., a housing or frame (not shown), by a bearing mount 19 having a centerline 20 that is aligned with the xe2x80x9cXxe2x80x9d axis, while a cantilevered end 22 of Y-axis gimbal arm 16 is pivotally mounted to the base member by a similar bearing mount 23 having a centerline 24 aligned with the Y axis. When control handle shaft 12 is in its normal xe2x80x9ccenterxe2x80x9d position (i.e., in the position shown in the Figure), a centerline 25 of pivot bearing 17 is substantially in coaxial alignment with centerline 20, while a centerline 26 of pivot bearing 15 is substantially in coaxial alignment with centerline 24. Furthermore, all of the centerlines are co-planar when the control handle shaft is in this configuration.
In most prior art haptic feedback devices, a separate servo motor for each axis is operatively coupled to the joystick control handle via various mechanisms such that a desired force and/or velocity can be applied to the joystick control handle having a magnitude that is a function of the torque and/or velocity of the motor drive shaft. In a quarter gimbal configuration, each servo motor is typically coupled to a respective gimbal arm through a transmission such as a gear train, so that the force generated at the joystick control handle is increased and the velocity is reduced. Such a configuration is shown in FIG. 1. As illustrated therein, X-axis gimbal arm 14 is operatively coupled to a servo motor 28 by a gear train 29 that includes a pinion gear 30, a combination gear drive 32, and a drive gear 34. Drive gear 34 is mounted on a drive shaft 36 that is fixedly coupled to X-axis gimbal arm 14. Similarly, Y-axis gimbal arm 16 is operatively coupled to a servo motor 38 by a gear train 39 that includes a pinion gear 40, a combination gear drive 42, and a drive gear 44 mounted on a drive shaft 46, which is fixedly coupled to Y-axis gimbal arm 16.
In addition to providing input forces to the joystick control handle, the position of the joystick control handle needs to be determined. This function is generally performed by various electromechanical or optical position sensors that are operatively coupled to the joystick control handle. Examples of such sensors include rotary or linear potentiometers, optical encoders, and linear displacement voltage transducers (LDVTs). In the exemplary quarter gimbal mechanism shown in FIG. 1, an X-axis potentiometer 48 is coupled to drive shaft 36 via drive gear 34, and a Y-axis potentiometer 50 is coupled to drive shaft 46 via drive gear 44.
Quarter gimbal 10 works in the following manner. It will be initially assumed that the servo motors are not powered and are free to rotate. In response to a user input force upon joystick control handle 12 in a forward direction F along the Y axis and perpendicular to the X axis, control handle shaft 12 pivots about pivot bearing 17, causing X-axis gimbal arm 14 to pivot about centerline 20 (i.e., about the X axis) in a counterclockwise direction. Since forward direction F is along the Y axis (and thus, aligned with centerline 24), there is no moment applied about centerline 24 to cause a rotation of Y-axis gimbal arm 16 about the Y axis. As X-axis arm 14 pivots about the X axis, drive shaft 36 is rotated, causing the rotor of servo motor 28 to rotate through the action of gear train 29. At the same time, the amount of rotation imparted to drive shaft 36 is sensed by X-axis potentiometer 48. A user input force applied in a reverse direction R would produce a substantially similar result, accept that the rotation imparted to drive shaft 36 would then be in a clockwise direction.
In response to a user input force in a direction L (to the left) that is along the X axis and perpendicular to the Y axis, control handle shaft 12 pivots about pivot bearing 15, causing Y-axis gimbal arm 16 to pivot about centerline 24 (i.e., about the Y axis) in a counterclockwise direction. Since direction L is along the X axis (and thus, aligned with centerline 20), there is no moment applied about centerline 20 to cause a rotation of X-axis gimbal arm 14 about the X axis. As Y-axis arm 16 pivots about the Y axis, drive shaft 46 is rotated, causing the rotor of servo motor 38 to rotate through the action of gear train 39. At the same time, the amount of rotation imparted to drive shaft 46 is sensed by Y-axis potentiometer 50. A user input force applied in direction RT (toward the right) would produce a substantially similar result, accept that the rotation imparted to drive shaft 46 would then be in a clockwise direction.
In the foregoing description, for the sake of simplifying the explanation, the user input forces were described as being applied about only a single axis at a time. During normal operation, the user is likely to displace the joystick control handle about both axes simultaneously. This type of control action is readily accommodated by the quarter gimbal configuration, since rotation about each axis is completely independent of the rotation about the other axis.
Now consider the behavior of quarter gimbal 10 when the servo motors are activated. In general, a control signal will be applied to each of servo motors 28 and 38 based on a sensed position of joystick control handle 12 and in accord with game criteria. For instance, a xe2x80x9crumblexe2x80x9d effect can be applied to the joystick control handle by rapidly oscillating one or both of the servo motors to simulate the feel of a vehicle in the game rolling over bumpy terrain. Another common effect comprises applying a resistance to the joystick control handle that is proportional to the displacement of the control handle about an axis, such as to simulate the force that would be felt when a character in the game advances into an elastic medium. Under this effect, a command signal is generated to increase the torque of a given servo motor as a function of a displacement of the control handle about the axis corresponding to the given servo motor.
Under both of the foregoing effects, as well as other effects, significant loading is applied to the gimbal arms, bearing mounts, and pivot bearings in a quarter gimbal mechanism. In addition, the cantilever configuration of the gimbal arms can lead to their undesired deflection. Ideally, the more rigid the overall support mechanism for the control handle, the better the haptic feedback response that will be experienced by a user. Accordingly, in order to properly implement the quarter gimbal configuration, it is necessary to employ parts with very tight tolerances and rigidity. While the cost of such parts is acceptable for certain applications of more expensive haptic feedback joysticks, such as those that are employed in commercial or military aircraft simulators, such parts are generally too expensive for use in the personal computer video game market.
Another problem that occurs with some haptic feedback joysticks concerns the interface between the drive gear and drive shaft for each respective axis. Since cost reduction is a significant concern with products marketed for use with video game players, most of the components, including the drive gears, of joysticks targeted for this market are made of plastic. Typically, each drive gear is drivingly coupled to a corresponding drive shaft using a keyway or spline to prevent the drive gear run spinning around the drive shaft. In general, the loading on the keyway or spline teeth is substantial, so that the interface between the drive gear and drive shaft is a common point of failure. The frequency of these failures is increased due to the extreme level of vibration that often accompanies haptic feedback effects. Accordingly, it is desirable to provide an interface for coupling each drive gear (or drive member in the case of a transmission that employs belts or cables) to its respective gimbal that is substantially less susceptible to damage or failure caused by heavy loading and vibration. Furthermore, it is desirable to provide a haptic feedback joystick that primarily employs low-cost components and materials, yet provides performance that is as good as or better than more expensive devices.
In accord with the present invention, a haptic feedback joystick is provided that addresses many of the foregoing limitations in the prior art. Signals are produced by the joystick for use in controlling a computer software program such as a computer game, in response to a pivotal displacement of a joystick control handle about two orthogonal axes. The joystick control handle is coupled to a full-gimbal assembly, which is connected to electric motors that provide a haptic feedback force. The full-gimbal assembly includes an upper and lower gimbal operatively coupled to a corresponding motor. The movement of the control handle about each axis is sensed by position sensors, which produce signals that are input to a computer running the software program. In response to the position of the joystick control handle and in accord with the software program, haptic feedback signals are generated and transmitted to the joystick and decoded by a motor controller. The motor controller produces appropriate electrical currents that energize the motors to produce the desired haptic feedback force effect applied to the control handle, which is experienced by a user gripping the control handle. Preferably, the joystick also includes a third input axis (the xe2x80x9cZxe2x80x9d axis), and rotation of the joystick control handle about the Z axis produces a third proportional output signal.
The present invention is thus directed to a haptic feedback joystick that includes a control handle adapted to enable a user to apply an input force that pivotally displaces the control handle about the X, Y, and/or Z axis. The control handle is supported by a control handle shaft, which is coupled to a multiple axis, full-gimbal assembly that enables the control handle shaft (and thus the control handle) to be pivotally displaced about the X and Y axes. The full-gimbal assembly includes an upper gimbal having an opening through which the control handle shaft extends. Opposing ends of the upper gimbal are coupled to a frame so that the upper gimbal is rotatable about the Y axis, and is pivotally coupled to the control handle shaft so as to enable rotation of the control handle shaft about the X axis. A lower gimbal, which is preferably identical to the upper gimbal, is also operatively coupled at opposing ends to the frame so as to be rotatable about the X axis and is pivotally coupled to the control handle shaft so as to enable rotation of the control handle shaft about the Y axis. Each of the upper and lower gimbals are coupled to a corresponding angular position sensorxe2x80x94each angular position sensor preferably comprising a potentiometer that senses the displacement of the control handle about one of the X and Y axes. Output signals indicative of the position of the control handle about these two axes are transmitted to a computer executing an application program. The computer generates haptic feedback signals corresponding to a desired haptic feedback force effect determined as a function of the control handle position and in accord with application program criteria. The haptic feedback signals are transmitted to a motion controller in the joystick that decodes the signals and produces appropriate electrical drive currents for the motors that are operatively coupled to the upper and lower gimbals, i.e., using a different motor for each gimbal. When thus energized, the motors produce haptic feedback torques that are applied to the control handle, tending to cause it to rotate about the X and/or Y axes.
Preferably, the control handle shaft includes a lower portion having a first pair of support shafts extending in opposite directions along a common centerline that is generally aligned with the X axis. A second pair of support shafts, orthogonal to the first pair, also extend in opposite directions from the control handle shaft along a common centerline that is generally aligned with the Y axis. Each of the upper and lower gimbals comprises a yoke-shaped frame that includes a pair of bearings mounted on opposing sides of the frame. The upper gimbal bearings are adapted to rotatably support the X-axis support shafts and the lower gimbal bearings are adapted to rotatably support the Y-axis support shafts.
Additionally, the control handle shaft preferably comprises an upper part and a lower part. The upper part includes a saddle from which the X-axis support shafts extend and in which a recess is defined. The Y-axis support shafts extend from the lower part. The lower part fits within the recess in the upper part enabling the lower and upper parts to be coupled together.
Each motor is operatively coupled to a corresponding one of the upper and lower gimbals via a corresponding transmission. Each transmission includes an input member coupled to one of the motors and an output member coupled to the one of the upper and lower gimbals. Preferably, the input member of each transmission includes a pinion gear coupled to one of the motors, and the output member comprises a sector gear operatively coupled to the pinion gear through a combination gear that is driven by the pinion gear. Each combination gear includes a large gear and a small gear mounted on a common rotational axis. The pinion gear engages the large gear, while the small gear engages the sector gear.
Preferably, each of the upper and lower gimbals includes a yoke-shaped frame having a pair of drive pins extending from a first end and having a shaft extending from a second end that is opposite the first end. The shaft of each yoke-shaped frame is received by a corresponding bearing mounted to the primary frame. Each of the transmissions includes a transmission bracket mounted to the primary frame that supports one of the motors. In addition, each transmission bracket includes a shaft extending from the bracket that is aligned with a different one of the X and Y axes, around which the sector gear rotates. Each transmission bracket also includes a pair of clearance slots through which the drive pins of a corresponding gimbal extend. The drive pins are received by holes defined in the sector gear so that the sector gear is fixedly coupled to the gimbal. A bearing support is thus provided for each end of both gimbals enabling the gimbals to rotate.
By employing a full-gimbal assembly in the joystick, many of the deficiencies commonly associated with quarter-gimbal mechanisms are avoided. Furthermore, by coupling the drive members to the gimbals with pairs of drive pins, as indicated above, premature failure of the drive assembly due to wear is avoided.
It is further preferable for the control handle to be rotatably mounted on the control handle shaft so as to enable rotation of the control handle about a longitudinal axis of the control handle shaft corresponding to a xe2x80x9cZxe2x80x9d axis. A position sensor, preferably a potentiometer, produces a signal indicative of the angular position of the control handle about the Z axis, as the control handle is rotated about this axis. A spring provides a bias force tending to return the control handle to a center position about the Z axis, if the joystick control handle is rotated away from the center position.